/**
 *
    算法描述：利用bool数组，对相应编号的灯进行处理就行了
    解决所需数据结构+算法：bool数组
**/
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;

bool l[2000010];

int main() {
    // true表示灯开，想要找到那个仅有的亮灯，又不知道一共有多少台灯，其实只需要找到从小到大的第一个亮灯就行了
    memset(l, false, sizeof(l));
    int n, t, id;
    double a;
    cin >> n;
    while(n--) {
        cin >> a >> t;
        for(int i=1; i<=t; i++) {
            id = (int)floor(a * i); // 拿到需要操作灯的编号
            l[id] = !l[id];         // 对灯进行操作，本质上就是对bool进行取反操作
        }
    }

    for(int i=1; i; i++) {
        if(l[i]) {                  // 找到的第一个亮着的灯
            cout << i << endl;
            return 0;
        }
    }

    return 0;
}